What Is Probabilistic Programming